home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-04-22 | 4.6 KB | 119 lines | [TEXT/MPS ] |
- /*
- File: OSLClbak.c
-
- Contains:
-
- Owned by: Eric House and Dan Clifford
-
- Copyright: © 1992 - 1995 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <3> 8/29/95 jpa DescPtr --> AEDesc* for Univ Hdrs 2.1.
- [1279173]
- <2> 7/21/95 eeh 1214396: stop compiler warnings in OSL
- <1> 5/2/94 eeh bug #1160654: first checked in
-
- To Do:
- */
- ////////////////////////////////////////////////////////////////////////////////
- // Copyright © 1992 Apple Computer, Inc. All rights reserved.
- // Author: Eric House
- ////////////////////////////////////////////////////////////////////////////////
-
- #ifndef _OSLPRIV_
- #include "OSLPriv.h"
- #endif
-
- typedef pascal OSErr (*compareProcType)( DescType oper, AEDesc obj1 ,
- AEDesc obj2, Boolean *result ) ;
- typedef pascal OSErr (*countProcProcType)( DescType desiredType,
- DescType containerClass, AEDesc container, long *result ) ;
- typedef pascal OSErr (*adjustMarksProcProcType)( long newStart, long newStop,
- AEDesc *markToken ) ;
- typedef pascal OSErr (*markProcProcType)( AEDesc dToken, AEDesc markToken,
- long n ) ;
- typedef pascal OSErr (*getMarkTokenProcProcType)( AEDesc dContainerToken,
- DescType containerClass, AEDesc *result ) ;
- typedef pascal OSErr (*getErrDescProcProcType)( AEDesc* *appDescPtr ) ;
-
-
- #define __SEP__ ,
-
- #define MAKECALLPROC( procName, procType, fieldName, formals, paramvars, params ) \
- OSErr \
- procName formals \
- { \
- procType proc ; \
- OSErr err = errAEEventNotHandled ; \
- GlobalRecHandle glob ; \
- \
- if ( (glob = (GlobalRecHandle)GetGlobalRef()) != NULL ) \
- { \
- if ( (proc = (procType)(*glob)->fieldName) != NULL ) \
- err = (OSErr)CallUniversalProc((UniversalProcPtr)proc, paramvars, params); \
- } \
- if ( (err == errAEEventNotHandled) \
- && ((glob = (GlobalRecHandle)GetSysGlobal()) != NULL) ) \
- { \
- if ( (proc = (procType)(*glob)->compareProcPtr) != NULL ) \
- err = (OSErr)CallUniversalProc((UniversalProcPtr)proc, paramvars, params); \
- } \
- return err ; \
- } \
-
- MAKECALLPROC( CallCompareProc, compareProcType, compareProcPtr,
- ( DescType oper, AEDesc obj1, AEDesc obj2, Boolean *result ),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(2, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(3, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(4, kFourByteCode)),
- oper __SEP__ &obj1 __SEP__ &obj2 __SEP__ result )
-
- MAKECALLPROC( CallCountProc, countProcProcType, countProcPtr,
- ( DescType desiredType, DescType containerClass,
- AEDesc container, long *result ),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(2, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(3, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(4, kFourByteCode)),
- desiredType __SEP__ containerClass __SEP__ &container __SEP__ result )
-
- MAKECALLPROC( CallAdjustMarks, adjustMarksProcProcType, AdjustMarksProcPtr,
- (long newStart, long newStop, AEDesc markToken),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(2, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(3, kFourByteCode)),
- newStart __SEP__ newStop __SEP__ &markToken )
-
- MAKECALLPROC( CallMark, markProcProcType, MarkProcPtr,
- ( AEDesc dToken, AEDesc markToken, long n ),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(2, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(3, kFourByteCode)),
- &dToken __SEP__ &markToken __SEP__ n )
-
- MAKECALLPROC( CallGetMarkToken, getMarkTokenProcProcType, getMarkIDProcPtr,
- ( AEDesc dContainerToken, DescType containerClass, AEDesc *result ),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(2, kFourByteCode) |
- STACK_ROUTINE_PARAMETER(3, kFourByteCode)),
- &dContainerToken __SEP__ containerClass __SEP__ result )
-
- MAKECALLPROC( CallGetErrDesc, getErrDescProcProcType, TypeAsIndexProc,
- ( AEDesc* *appDescPtr ),
- (kPascalStackBased |
- RESULT_SIZE(SIZE_CODE(sizeof(OSErr))) |
- STACK_ROUTINE_PARAMETER(1, kFourByteCode)),
- appDescPtr )
-